package com.by.erpsale.config;

import com.by.erpsale.interceptor.FeignAuthInterceptor;
import feign.Logger;
import feign.Request;
import feign.RequestInterceptor;
import feign.auth.BasicAuthRequestInterceptor;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import java.util.concurrent.TimeUnit;


/**
 * description:
 * author:zcx
 * lenovo
 * 时间：2022.06.08.20.29
 */
@Configuration

public class FeiginConfig {
  @Bean
  Logger.Level level() {
      return Logger.Level.FULL;
      //返回日志级别，NONE：不输出日志。
//      BASIC：只输出请求方法的 URL 和响应的状态码以及接
//      口执行的时间。
//      HEADERS：将 BASIC 信息和请求头信息输出。
//      FULL：输出完整的请求信息。
  }
    /**
     *基础认证
     */
//      @Bean
//      public BasicAuthRequestInterceptor basicAuthRequestInterceptor(){
//          return new BasicAuthRequestInterceptor("admin","1357");
//  }
    /**
     *自定义认证
     *
     */
    @Bean
    public RequestInterceptor feignAuthInterceptor(){
      return new FeignAuthInterceptor();
    }
    @Bean
    public Request.Options options(){
        return new Request.Options(1L, TimeUnit.SECONDS,1L,TimeUnit.SECONDS,true);
    }
}
